package br.com.leopard.erp.gym.dao.cad;

import java.util.List;

import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.Query;

import br.com.leopard.erp.gym.mapeamento.cad.PessoaFisica;
import br.com.leopard.erp.gym.mapeamento.cad.PessoaDocumento;
import br.com.leopard.erp.gym.persistence.AbstractDAO;
import br.com.leopard.erp.gym.persistence.ParametroQueryBuilder;

@Stateless
@LocalBean
public class PessoaDocumentoDAO extends AbstractDAO<PessoaDocumento, Long> {

	public PessoaDocumentoDAO() {
		super(PessoaDocumento.class);
	}

	public List<PessoaDocumento> getPorPessoa(PessoaFisica pessoa) {
		String query = "PessoaDocumento.findByPessoa";

		ParametroQueryBuilder builder = new ParametroQueryBuilder();
		builder.addParametro("pessoa", pessoa);

		return super.listNamedQuery(query, builder.getParametros());
	}

	public void excluirDocumentosDaPessoa(PessoaFisica pessoa) {
		String query = "PessoaDocumento.excluirDocumentosDaPessoa";

		Query q = entityManager.createNamedQuery(query);
		q.setParameter("id_pessoa", pessoa.getIdPessoa());

		q.executeUpdate();
	}

}
